package file_operation;

import java.io.File;
import java.io.FileFilter;

/**
 * 文件过滤器优化
 * 
 * java.io.FileFilter 是一个接口，是File的过滤器
 * 该接口的对象可以传递给File类的 listFiles(FileFilter) 作为参数， 接口中只有一个方法
 * 
 * boolean accept(File pathname)		测试pathname是否应该包含在当前File目录中，符合则返回true
 * 														参数为File，表示当前File下所有的子文件和子目录。保留住则返回true，过滤掉则返回 false
 * */
public class FileFilterDemo {
	public static void main(String[] args) {
		File drectory = new File("D:\\Projects\\JavaProjects\\Demo_eclipse\\src");
		MultilevelDirectoryPrinting.printDirectory(drectory, new FileFilter() {
			
			@Override
			public boolean accept(File pathname) {
				return pathname.getName().endsWith(".java") || pathname.isDirectory();
			}
		});
	}
}
